//package cn.wiseda.finance.dao.util;
//
//import java.io.Serializable;
//import java.sql.Connection;
//import java.sql.PreparedStatement;
//import java.sql.SQLException;
//import java.sql.Statement;
//
//import javax.annotation.Resource;
//import javax.sql.DataSource;
//
//import org.springframework.jdbc.core.JdbcTemplate;
//import org.springframework.jdbc.core.PreparedStatementCreator;
//import org.springframework.jdbc.core.simple.ParameterizedRowMapper;
//import org.springframework.jdbc.support.GeneratedKeyHolder;
//import org.springframework.jdbc.support.KeyHolder;
//
//import cn.wiseda.finance.entity.ormutil.Page;
//
//public class DBHelper<E> {
//
//	private JdbcTemplate jdbcTemplate;
//
//	@Resource
//	public void setDataSource(DataSource dataSource) {
//		jdbcTemplate = new JdbcTemplate(dataSource);
//	}
//
//	/**
//	 * 插入后返回ID
//	 * @param sql
//	 * @return
//	 */
//	public Serializable insertAndGetKey(final String sql) {
//		KeyHolder keyHolder = new GeneratedKeyHolder();
//		jdbcTemplate.update(new PreparedStatementCreator() {
//			public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
//
//				PreparedStatement ps = connection.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
//
//				return ps;
//			}
//		}, keyHolder);
//
//		int generatedId = keyHolder.getKey().intValue();
//		return generatedId;
//	}
//
//	/**
//	 * 分页查询
//	 * @param sqlCountRows
//	 * @param sqlFetchRows
//	 * @param pageNo
//	 * @param pageSize
//	 * @param rowMapper
//	 * @param args
//	 * @return
//	 */
//	public Page<E> fetchPage(final String sqlCountRows, final String sqlFetchRows, final int pageNo, final int pageSize,
//			final ParameterizedRowMapper<E> rowMapper, final Object... args) {
//		PageHelper<E> help = new PageHelper<E>();
//		Page<E> fetchPage = help.fetchPage(jdbcTemplate, sqlCountRows, sqlFetchRows, pageNo, pageSize, rowMapper, args);
//		return fetchPage;
//	}
//	
//	
//}
